Legacy Log Analytics dashboards/ThreatIntelligenceDashboard.ts (46 lines of code) (raw):

ThreatIntelligenceDashboard = { ThreatBreakdown: { ThreatTypesDonut: "let schemaColumns = datatable(RemoteIPCountry:string)[]; \ union isfuzzy= true schemaColumns, W3CIISLog, DnsEvents, WireData, WindowsFirewall, CommonSecurityLog \ | where isnotempty(MaliciousIP) and (isnotempty(MaliciousIPCountry) or isnotempty(RemoteIPCountry))" + "| summarize Value = count() by IndicatorThreatType", CountryList: { Query: "let schemaColumns = datatable(RemoteIPCountry:string)[]; \ union isfuzzy= true schemaColumns, W3CIISLog, DnsEvents, WireData, WindowsFirewall, CommonSecurityLog \ | where isnotempty(MaliciousIP) and (isnotempty(MaliciousIPCountry) or isnotempty(RemoteIPCountry))" + "| extend Country = iff(isnotempty(MaliciousIPCountry), MaliciousIPCountry, iff(isnotempty(RemoteIPCountry), RemoteIPCountry, '')) \ | summarize Count=count() by Country \ | top 10 by Count", ListItemNavigationQuery: "let schemaColumns = datatable(RemoteIPCountry:string)[]; \ union isfuzzy= true schemaColumns, W3CIISLog, DnsEvents, WireData, WindowsFirewall, CommonSecurityLog \ | where isnotempty(MaliciousIP) and (isnotempty(MaliciousIPCountry) or isnotempty(RemoteIPCountry))" + "| extend Country = iff(isnotempty(MaliciousIPCountry), MaliciousIPCountry, iff(isnotempty(RemoteIPCountry), RemoteIPCountry, '')) \ | where {selected item}" } }, ThreatLocation: { Query: "union \ ((union isfuzzy=true \ (WireData | where Direction == 'Outbound' | extend Country=RemoteIPCountry, Latitude=RemoteIPLatitude, Longitude=RemoteIPLongitude), \ (WindowsFirewall | where CommunicationDirection == 'SEND' | extend Country=MaliciousIPCountry, Latitude=MaliciousIPLatitude, Longitude=MaliciousIPLongitude), \ (CommonSecurityLog | where CommunicationDirection == 'Outbound' | extend Country=MaliciousIPCountry, Latitude=MaliciousIPLatitude, Longitude=MaliciousIPLongitude, Confidence=ThreatDescription, Description=ThreatDescription)) \ | where isnotempty(MaliciousIP) and isnotempty(Country) and isnotempty(Latitude) and isnotempty(Longitude) \ | summarize Count= count() by MaliciousIP, IndicatorThreatType, Country, Latitude, Longitude, Confidence, Description, ReportReferenceLink, LayerId='outgoing-traffic' \ | top 150 by Count), \ ((union isfuzzy=true \ (W3CIISLog | extend Country=RemoteIPCountry, Latitude=RemoteIPLatitude, Longitude=RemoteIPLongitude), \ (DnsEvents | extend Country= RemoteIPCountry, Latitude = RemoteIPLatitude, Longitude = RemoteIPLongitude), \ (WireData | where Direction != 'Outbound' | extend Country=RemoteIPCountry, Latitude=RemoteIPLatitude, Longitude=RemoteIPLongitude), \ (WindowsFirewall | where CommunicationDirection != 'SEND' | extend Country=MaliciousIPCountry, Latitude=MaliciousIPLatitude, Longitude=MaliciousIPLongitude), \ (CommonSecurityLog | where CommunicationDirection != 'Outbound' | extend Country=MaliciousIPCountry, Latitude=MaliciousIPLatitude, Longitude=MaliciousIPLongitude, Confidence=ThreatDescription, Description=ThreatDescription)) \ | where isnotempty(MaliciousIP) and isnotempty(Country) and isnotempty(Latitude) and isnotempty(Longitude) \ | summarize Count= count() by MaliciousIP, IndicatorThreatType, Country, Latitude, Longitude, Confidence, Description, ReportReferenceLink, LayerId='incoming-traffic' \ | top 150 by Count)", IncomingMaliciousTrafficNavigationQuery: "union isfuzzy=true W3CIISLog, DnsEvents, (WireData | where Direction != 'Outbound'), (WindowsFirewall | where CommunicationDirection != 'SEND'), (CommonSecurityLog | where CommunicationDirection != 'Outbound') | where MaliciousIP == '{0}'", OutgoingMaliciousTrafficNavigationQuery: "union isfuzzy=true (WireData | where Direction == 'Outbound'), (WindowsFirewall | where CommunicationDirection == 'SEND'), (CommonSecurityLog | where CommunicationDirection == 'Outbound') | where MaliciousIP == '{0}'", } };